package variableparameter;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Set;

public class Demo2 {
    public static void main(String[] args) {
        //创建一个指定元素list集合对象
        List<String> list1 = List.of("a", "b", "c");
        System.out.println(list1);
        //创建一个指定元素Set集合对象
        //传递参数当中，不能存在重复元素
        Set<String> st = Set.of("a", "b", "c", "d", "e");
        System.out.println(st);
        //创建一个指定元素Map集合对象
        Map<String, String> map = Map.of("张三", "湖南", "李四", "上海");
        System.out.println(map);
        //封装成一个Entry对象，提高代码的阅读性
        Map<String, String> stringStringMap = Map.ofEntries
                (Map.entry("张三", "湖南"), Map.entry("李四", "上海"));
        System.out.println(stringStringMap);

        //集合批量添加
        // 第一：创建一个不可变集合，of方法形参就是一个可变参数
        //第二：创建一个ArrayList集合，把不可变集合所有数据添加到ArrayList集合
        ArrayList<String>list3 = new ArrayList<>(List.of("a","b","c","d"));
        System.out.println(list3);
        ArrayList<ArrayList<String>>list = new ArrayList<>();
        list.add(list3);
        System.out.println(list);
    }
}
